
Ext.define('desarrollo.RevertirForm', {
    extend: 'Ext.form.Panel',
    alias: 'widget.revertirform',
    requires: ['Ext.form.field.Text'],
    initComponent: function(){		
        Ext.apply(this, {
            activeRecord: null,
            iconCls: 'icon-revertir',
            frame: true,
            defaultType: 'textfield',
            bodyPadding: 15,
            fieldDefaults: {
                anchor: '100%',
            },
            items: [{
                fieldLabel: 'Id',
                name: 'id',
                type: 'int',
                itemId: 'idItem',
                hidden: true,
            },{
                fieldLabel: 'IdFase',
                name: 'idRevertido',
                type: 'int',
                itemId: 'idItemRevertido',
                hidden: true,
            },{
                fieldLabel: '<b>Nombre</b>',
                name: 'nombre',
                fieldStyle: 'background-color: transparent; border: none; background-image: none;',
                itemId: 'nombre',
            },{
				
                fieldLabel: '<b>Descripcion</b>',
                name: 'descripcion',
                fieldStyle: 'background-color: transparent; border: none; background-image: none;',
                itemId: 'descripcion',
            },{
                fieldLabel: '<b>Complejidad</b>',
                name: 'complejidad',
                fieldStyle: 'background-color: transparent; border: none; background-image: none;',
                type: 'int',
                itemId: 'idComplejidad',
                
            },{
                fieldLabel: '<b>Version</b>',
                name: 'version',
                itemId: 'version',
                fieldStyle: 'background-color: transparent; border: none; background-image: none;',
                                
            }],
            dockedItems: [{
				xtype: 'toolbar',
				items: [
						{
						iconCls: 'icon-atributos',
						itemId: 'atributos',
						text: '<b>Ver Atributos</b>',
						hidden: true,
						scope: this, 
						handler: this.onAtributos
					},{
						iconCls: 'icon-archivo',
						itemId: 'archivos',
						text: '<b>Ver Archivos</b>',
						hidden: true,
						scope: this, 
						handler: this.onArchivos
					},{}]
				},{
				weight: 1,
                xtype: 'toolbar',
                dock: 'bottom',
                items: ['->',{
						iconCls: 'icon-revertir',
						itemId: 'revertir',
						text: '<b>Revertir</b>',
						hidden: true,
						scope: this, 
						handler: this.onRevertir
					},{
                    iconCls: 'icon-reset',
                    text: '<b>Reset</b>',
                    scope: this,
                    handler: this.onReset
                }]
            }]
        });
        this.callParent();
    },

    setActiveRecord: function(record){
        this.activeRecord = record;
        if (record) {
			
            this.down('#revertir').show();
            this.down('#atributos').show();
            this.down('#archivos').show();
            this.getForm().loadRecord(record);
            
        } else {

            this.down('#revertir').hide();
            this.down('#atributos').hide();
            this.down('#archivos').hide();
            //this.getForm().reset();
            this.down('#descripcion').setValue("");
            this.down('#idComplejidad').setValue("");
            this.down('#idItem').setValue("");
            this.down('#nombre').setValue("");
            this.down('#version').setValue("");
            
        }
    },
        
    onRevertir: function(){
        var form = this.getForm();
                    form.submit({                        
                        url: 'revertir_item',
                        params: {	submit: 'submit'	},
						method: "post",
                       success: function(form, action) {
								this.down('#descripcion').setValue("");
								this.down('#idComplejidad').setValue("");
								this.down('#idItem').setValue("");
								this.down('#nombre').setValue("");
								
								var jsonData = Ext.JSON.decode(action.response.responseText);								
								var resultMessage = jsonData['mensaje'];
								
								this.fireEvent('salir');
								
								Ext.Msg.show({ 		title: '<br><p align="center"><b>ALPHA MANAGER</b></p>', //<- el título del diálogo  
													msg: resultMessage, 	icon: 'ext-mb-ok',
								});/*
							    Ext.Msg.show({  
									title: '<br><p align="center"><b>ALPHA MANAGER</b></p>', //<- el título del diálogo  
									msg: 'Item revertido satisfactoriamente', //<- El mensaje  
									icon: 'ext-mb-ok',
								});*/
														                       
                        },
                        scope: this,                        
                        failure: function(form, action) {									
									Ext.Msg.show({  
										title: '<br><p align="center"><b>ALPHA MANAGER</b></p>', //<- el título del diálogo  
										msg: 'No se ha podido revertir el item', //<- El mensaje  
										icon: 'ext-mb-error',
									});
                        }
                    });
    },
    
	onAtributos: function(){
			var form = this.getForm();
			this.fireEvent('AtributosRevertir', form.getValues(true));            
	},
	
	onArchivos: function(){
			var form = this.getForm();
			this.fireEvent('ArchivosRevertir', form.getValues(true));            
	},
	
    onReset: function(){
        this.setActiveRecord(null);
        //this.getForm().reset();
        this.fireEvent('refresh');
    },
    
});
